Skip to content

Check offline updates for incompatibility#2361

Merged
mcm001 merged 8 commits intoPhotonVision:mainfrom
samfreund:gatekeep-offline-update
Feb 18, 2026
Merged

Check offline updates for incompatibility#2361
mcm001 merged 8 commits intoPhotonVision:mainfrom
samfreund:gatekeep-offline-update

Conversation

@samfreund
Copy link
Member

@samfreund samfreund commented Feb 13, 2026

Description

We've been experiencing a variety of issues where people are performing an offline update with an incompatible jar, which leads to bricking their device. This PR aims to help users avoid this issue. We will deny offline updates built for a different platform, as well asking for confirmation when updating with a dev jar, or a jar built for a different year than the current image.

Note that this functionality is entirely dependent on the filename of the jar, and does not use any metadata.

This PR additionally increases the snackbar message timeout from 2 to 5 seconds, as we've found 2 seconds isn't sufficient to fully read the message.

closes #2357

Meta

Merge checklist:

  • Pull Request title is short, imperative summary of proposed changes
  • The description documents the what and why, including events that led to this PR
  • If this PR changes behavior or adds a feature, user documentation is updated
  • If this PR touches photon-serde, all messages have been regenerated and hashes have not changed unexpectedly
  • If this PR touches configuration, this is backwards compatible with all settings going back to the previous seasons's last release (seasons end after champs ends)
  • If this PR touches pipeline settings or anything related to data exchange, the frontend typing is updated
  • If this PR addresses a bug, a regression test for it is added

@github-actions github-actions bot added frontend Having to do with PhotonClient and its related items backend Things relating to photon-core and photon-server labels Feb 13, 2026
@samfreund samfreund force-pushed the gatekeep-offline-update branch 8 times, most recently from 310c562 to 29cedf7 Compare February 15, 2026 05:27
@samfreund samfreund requested review from DevonRD and mcm001 February 15, 2026 08:03
@samfreund samfreund marked this pull request as ready for review February 15, 2026 08:03
@samfreund samfreund requested a review from a team as a code owner February 15, 2026 08:03
@samfreund
Copy link
Member Author

I considered adding playwright testing, but then I'd have to mock the year version which feels like doing too much.

@samfreund samfreund force-pushed the gatekeep-offline-update branch from acb6bc6 to 0ee2f0c Compare February 16, 2026 19:01
@samfreund samfreund requested a review from mcm001 February 16, 2026 19:13
@samfreund samfreund force-pushed the gatekeep-offline-update branch from c735e1b to 77e51a7 Compare February 17, 2026 05:15
@samfreund samfreund marked this pull request as draft February 17, 2026 05:15
@samfreund samfreund force-pushed the gatekeep-offline-update branch from 77e51a7 to 4b2e3d7 Compare February 17, 2026 06:00
@samfreund samfreund marked this pull request as ready for review February 17, 2026 06:00
@samfreund
Copy link
Member Author

image

@samfreund
Copy link
Member Author

Tested rejection on incorrect arch, rejection on incorrect filename pattern. Image version matching and dev version checks also work, prompting for confirmation.

@mcm001
Copy link
Contributor

mcm001 commented Feb 17, 2026

What does "version that is not your image" mean? I think we should also include steps for what the user ought to do (ie, update their base image, use the correct jar, etc) as well on that page

@samfreund
Copy link
Member Author

What does "version that is not your image" mean? I think we should also include steps for what the user ought to do (ie, update their base image, use the correct jar, etc) as well on that page

Based on OsMetadata, the image version that we write to disk when we run our scripts in photon-image-modifier.

@mcm001
Copy link
Contributor

mcm001 commented Feb 17, 2026

Ok. The MR description says diffferent year than the current image -- if that's the case, let's make the modal say that explicitly

@samfreund
Copy link
Member Author

image

@samfreund samfreund force-pushed the gatekeep-offline-update branch from e4d1312 to 1be7bc6 Compare February 17, 2026 17:19
@samfreund samfreund force-pushed the gatekeep-offline-update branch from 1be7bc6 to c6df533 Compare February 17, 2026 17:21
@samfreund samfreund force-pushed the gatekeep-offline-update branch from c6df533 to 1784ddd Compare February 17, 2026 20:32
@samfreund samfreund requested a review from mcm001 February 18, 2026 00:07
@mcm001 mcm001 merged commit 5474e28 into PhotonVision:main Feb 18, 2026
58 checks passed
@samfreund samfreund deleted the gatekeep-offline-update branch February 18, 2026 16:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

backend Things relating to photon-core and photon-server frontend Having to do with PhotonClient and its related items

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants